<?php
declare (strict_types = 1);

namespace app\admin\controller;

use think\db\Fetch;
use think\facade\Db;
use think\facade\View;
use think\Request;

class Swiper
{
    /**
     * 显示资源列表
     *
     * @return \think\Response
     */
    public function index()
    {
        return View::fetch('index');
    }

    public function getSwiper()
    {
        $data = Db::name('swiper')->select();
        return json(['code' => 0,'data' => $data]);
    }

    /**
     * 显示创建资源表单页.
     *
     * @return \think\Response
     */
    public function create()
    {
        return View::fetch('add');
    }

    /**
     * 保存新建的资源
     *
     * @param  \think\Request  $request
     * @return \think\Response
     */
    public function save(Request $request)
    {
        $data = $request->except(['fileselect']);
        $res = Db::name('swiper')->insert($data);
        if ($res){
            return json(['status' => 'success','msg'=>'上传成功']);
        }else{
            return json(['status' => 'err','msg'=>'上传失败']);
        }
    }

    /**
     * 显示指定的资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function read($id)
    {
        //
    }

    /**
     * 显示编辑资源表单页.
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function edit($id)
    {
        $swiper = Db::name('swiper')->where('id',$id)->find();
        return View::fetch('edit',['swiper'=>$swiper]);
    }

    /**
     * 保存更新的资源
     *
     * @param  \think\Request  $request
     * @param  int  $id
     * @return \think\Response
     */
    public function update(Request $request, $id)
    {
        $data = $request->except(['fileselect']);
        $res= Db::name('swiper')->where('id',$id)->update($data);
        if ($res){
            return json(['status' => 'success','msg'=>'更新成功']);
        }else{
            return json(['status' => 'err','msg'=>'更新失败']);
        }
    }

    /**
     * 删除指定资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function delete($id)
    {
        $res = Db::name('swiper')->where('id',$id)->delete();
        if ($res){
            return json(['status' => 'success','msg'=>'删除成功']);
        }else{
            return json(['status' => 'err','msg'=>'删除失败']);
        }
    }

    public function upload(Request $request)
    {
        // 获取表单上传文件 例如上传了001.jpg
        $file = $request->file('file');
        // 上传到本地服务器
        $savename = \think\facade\Filesystem::putFile( 'swiper', $file,'md5');

        // 上传验证

        // 返回数据
        return json(['status'=>'success','img_url'=>'/storage/'.$savename]);
    }
    public function isShow(Request $request)
    {
        $id = $request->param('id');
        $is_show = $request->param('is_show');
        if($is_show){
            Db::name('swiper')->where('id',$id)->update(['is_show'=>0]);
        }else{
            Db::name('swiper')->where('id',$id)->update(['is_show'=>1]);
        }

    }
}
